06. 查看特定的 commit
太多滚动操作
上一部分的最后几个练习需要在补丁输出中不断向下滚动,以便找到正确的 commit 并查看其信息。如果能显示特定 commit 的详情,而不用关心仓库中的所有其他内容,是不是很棒?
实际上有两种实现方式!
-
向
git log提供你要查看的 commit 的 SHA -
使用新的
git show命令
它们都很简单,我们先学习
git log
方式,然后再学习
git show
。
你已经知道如何使用以下命令输出信息:
-
git log -
git log --oneline -
git log --stat -
git log -p
但是你是否知道,可以向所有这些命令提供 commit 的 SHA 作为最后一个参数?例如:
$ git log -p fdf5493
通过提供 SHA,
git log -p
命令将从这条 commit 开始!无需滚动并逐条查阅!注意,它还会显示在所提供的 SHA 之前提交的所有 commit 信息。
新命令:
git show
另一个显示特定 commit 的命令是
git show
:
$ git show
运行上述示例命令将仅显示最近的 commit。通常,将 SHA 作为最后一个参数提供给命令:
$ git show fdf5493
git show
的作用是?
git show
命令将仅显示一个 commit。因此,如果你看不到任何其他 commit,不要惊慌。它只显示一个 commit。
git show
命令的输出和
git log -p
命令的完全一样。因此默认情况下,
git show
会显示:
- commit
- 作者
- 日期
- commit 消息
- 补丁信息
但是,
git show
可以与我们了解过的大部分其他选项一起使用:
-
--stat- 显示更改了多少文件,以及添加/删除的行数 -
-p或--patch- 显示默认补丁信息,但是如果使用了--stat,将不显示补丁信息,因此传入-p以再次添加该信息 -
-w- 忽略空格变化
你现在已经是
git log
达人了!试着求解几道练习题吧。
添加了多少个规则集?
SOLUTION:
2更改了多少个文件?
SOLUTION:
5 个文件添加了什么级别的标题?